Systems and methods for enabling situational awareness for events via data visualization

ABSTRACT

Aspects of the present disclosure relate to data visualization, and more specifically, to technology that automatically visualizes various analytics and predictions generated for mass participation endurance events, or other mass participation events of interest.

CROSS-REFERENCE TO RELATED APPLICATIONS

This Application is a Continuation of U.S. patent application Ser. No.15/478,033 filed on Apr. 3, 2017, which claims the benefit of U.S.Provisional Application No. 62/317,073 filed on Apr. 1, 2016, each ofwhich is incorporated by reference in its entirety herein.

STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

This invention was made with government support under CMM11405231 andCMM11458000 awarded by the National Science Foundation. The governmenthas certain rights in the invention.

TECHNICAL FIELD

Aspects of the present disclosure relate to computing systems thatautomatically simulate and visualize various aspects of a massparticipation endurance events or other events of interest.

BACKGROUND

Mass participation events, such as marathons, often pose public safetyrisks to do the high volume of engaged participants. For example,hundreds of marathons are organized worldwide ever year and most havethousands of people participating in some type of active capacity, suchas running, walking, spectating, volunteering, etc. Real-timemanagement, monitoring, and tracking of participants and associatedresources in such events is crucial for event organizers, both undernormal operating conditions and in the event of an emergency, or othertype of catastrophic event.

It is with these concepts in mind, among others, that various aspects ofthe present disclosure were conceived.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, features, and advantages of the presentdisclosure set forth herein will be apparent from the followingdescription of particular embodiments of those inventive concepts, asillustrated in the accompanying drawings. Also, in the drawings the likereference characters refer to the same parts throughout the differentviews. The drawings depict only typical embodiments of the presentdisclosure and, therefore, are not to be considered limiting in scope.

FIG. 1 is a block diagram illustrating a computing network formonitoring, aggregating, and visualizing information for massparticipation events, according to aspects of the present disclosure.

FIGS. 1A-1B are graphs illustrating runner simulations, speedcalculations, and correlations, according to aspects of the presentdisclosure.

FIG. 2 is a flowchart illustrating an example process monitoring,aggregating, and visualizing information for mass participation events,according to aspects of the present disclosure.

FIG. 3 is a flowchart illustrating an example process for simulatingparticipation in a marathon, according to aspects of the presentdisclosure.

FIG. 4 is a block diagram illustrating a computing device specificallydesigned and configured for the specific purpose of monitoring andsimulating participation in mass participation events, according toaspects of the present disclosure.

DETAILED DESCRIPTION

Aspects of the present disclosure involve a dynamic data visualizationsystem that automatically monitors (e.g., in real-time) the flow ofparticipants and resources involved in a mass participation event, suchas a marathon, or other event of interest. In various embodiments, thedata visualization system, dynamically and in real-time, receives dataand information corresponding to the mass participation event andautomatically visualizes the data by generating one or more interactivegraphical user interfaces for display, such as at one or more clientdevices deployed within a communications network. The data visualizationsystem also includes prediction logic (e.g., one or more predictionalgorithms) that automatically predicts (e.g., generates one or moreanalytics) and/or otherwise automatically simulates behavior patternsfor participants of the mass participation event, any of which may alsobe displayed within the interactive graphical user-interfaces.

In other aspects, the data visualization system may be employed toprovide useful information (e.g., predictions, metrics, andnotifications) to organizers and/or administrators of the massparticipation event, under both normal operating event circumstances andin circumstances representative of an emergency. For example, in thecontext of a marathon, organizers are typically responsible foroverseeing the wellness of thousands of participants, as well as managethe individuals and resources involved with medical aid and/or otherevent resources, and/or the like. In such a context, the predictionlogic of the data visualization system may be used to simulateparticipant density along the marathon path, and predict the location ofparticipants at a future point in time. Additionally, the predictionlogic may be able to predict the demand and consumption of variousresources required by such participants. The predictions are validatedwith real-item mass participation event data, which once validated, ispassed to the prediction logic for continuous (e.g., real-time)refinement. Any of the real-time data may be used to dynamically drivethe generated graphical-user interfaces.

In yet other aspects, the present application describes a specificcomputing system(s), architecture, and/or computing environment that maybe used to solve specific problems faced by typical computing systemsinvolved in the management and automation of mass participation events.For example, typical computing systems and environments used in massparticipation events face large system load times due to poor bandwidthand network connectivity during events, causing the system to face hugesystem delay and data latency issues when attempting to load new datafrom external resources, all of which causes users of such existingsystems to receive data late (i.e., users could not immediately obtaincritical information and data from the system). Moreover, typicalcomputing systems involved in the monitoring of mass participationevents attempt to determine the location of participants (e.g., runnersin a marathon) based on static and historic location data maintained atexternal computing systems (e.g., GPS data). Again, due to limitednetwork connectivity, accessing such data may be limited. Finally,typical computing systems involved in mass participation events generatesimulations based on limited and outdated event data using simulationalgorithms that are static and which cannot be modified in any mannerwithout an exhaustive redesign of the system.

The system architecture and/or computing environment disclosed in thepresent application allows for fast and seamless data updates to enablereal-time data visualization during a mass participant event. In someinstances, unique data streams are established for each type ofinformation or data (weather, medical, participant, environment, courseinformation, etc.) processed by the system, causing the system to nothave to process and parse the various types or pieces of data frommultiple streams, thereby reducing latency and delay. Additionally, thesystem and methods disclosed herein use prediction logic (e.g.,machine-learning mechanisms) that process mass participation event dataand traffic to simulate various aspects of the event, such as simulatingrunners participating in a marathon. The simulated aspects (e.g., thesimulation data) is processed to verify that the simulation is accurate,and when determined accurate, the simulation data is automaticallyprovided to the prediction logic of the system to continuously refinethe prediction capabilities of the system, resulting in more precise andmeaningful predictions.

The present application uses marathons as an example to illustrate thevarious concepts set out herein. The present application, however, isnot limited to marathons, and is applicable to other mass participationevents of interest, such as concerts, festivals, conventions, masspolice responses, and/or the like.

FIG. 1 illustrates a computing network 100 capable of monitoring,aggregating, and visualizing information corresponding to a massparticipation event, according to one embodiment. The computing network100 may be an IP-based telecommunications network, the Internet, anintranet, a local area network, a wireless local network, a contentdistribution network, or any other type of communications network, aswell as combinations of networks.

As illustrated, the computing network 100 includes a data visualizationsystem 102, which may be a processing device that functionally connects(e.g., using communications network 100) to one or more client devices104-110 included within the computing network 100. A user interested inmonitoring a mass participation event may interact with one or moreclient device(s) 104-110 to initiate a request, which may be received bydata visualization system 102. More particularly, the one or more clientdevice(s) 104-110 may also include a user interface, such as a browserapplication, to generate a request for monitoring mass participationevents, such as for example in real-time. In response, the datavisualization system 102 may transmit instructions that may be processedand/or executed to generate various visualizations and/or simulationscorresponding to the mass participation event (e.g., a marathon). Theone or more client devices 104-110 may be any of, or any combination of,a personal computer; handheld computer; mobile phone; digital assistant;smart phone; server; application; and the like. In one embodiment, eachof the one or more client devices 104-110 may include a processor-basedplatform that operates on any suitable operating system, such asMicrosoft® Windows®, Linux®, and/or the like that is capable ofexecuting software.

In some embodiments, the visualization system 102 may automaticallyobtain and process operational data corresponding to the massparticipation event. The operational data obtained by the datavisualization system 102 may include, but is not limited to: datadescribing resources of the mass participation event; participantdemographic and characteristic information; geographic and/or weatherinformation of the mass participation event; among other information. Insome embodiments, the data visualization platform 102 may include or beconnected with a database 120, which may be a general repository ofoperational data (both historic and real-time) corresponding to a massparticipation event. The database 120 may include memory and one or moreprocessors or processing systems to receive, process, query and transmitcommunications and store and retrieve such data. In another aspect, thedatabase 120 may be a database server. In one specific example, the datavisualization system may archive data in the database 120 or some othertype of data storage (e.g., remotely located) during a massparticipation event, such as a marathon. Typical mass participationevent systems overwrite data when the system updates. The system of thepresent application archives the data so that the archived data may beused to train the system when generating mass participation analyticsand predictions.

In one specific embodiment, the data visualization system 102 mayfunctionally communicate with one or more data sensors 122-126physically located within the mass participation event to obtainoperational data corresponding to participants of the mass participationevent. For example, it is common in a marathon to have a series oftiming mats that include an processor and antenna or other types ofcommunication devices capable of recognizing signals from participant(e.g., a participant in a marathon may have a timing chip) and/ortransmitting data, such as when a runner steps on the mat, the runner'schip is recognized by the timing mat, which in turn records data aboutthe runner.

Referring now to FIG. 2 and with reference to FIG. 1 , an illustrativeprocess 200 for monitoring, aggregating, simulating, and visualizinginformation for mass participation events is provided. As illustrated,initially, operational data may be collected and/or otherwise receivedat the data visualization system 102 that corresponds to a massparticipation event (operation 202). In one particular embodiment, theoperational data may be obtained by automatically receiving or otherwiseaccessing data from existing mass participation event systems 116 ordatabases and/or other data sources (e.g., historic operational data)associated with previous mass participation events (illustrated in FIG.1 at 116 and 118). For example, if the mass participation event were amarathon, the mass participation event system 116 may represent anycomputing system capable of storing data corresponding to a marathon.Such data may include data indicating the start time of the marathon,end time, start location, end location, weather, runner location,medical station location, and the like. In another embodiment, such datamay include data describing the behavior of a participant in the massparticipation event or a group of participants in the mass participationevent. Thus, if the event were a marathon, the data may describe variousbehaviors of runners, such as speed, start and stop points, clusteringof groups of runners, and/or the like.

In one specific embodiment, the operational data may be received intothe data visualization system 102 as one or more unique data streamscorresponding to specific aspects of the mass participation event. Forexample, and in the context of a marathon, the unique data streams mayinclude a stream corresponding to course data, runner demographic data,runner time data, health data, and weather data. An analysis of suchdata streams may result in the identification of various metrics andanalytics that may be visualized and/or displayed at the one or moreclient devices 104-110. For example, an analysis of medical data mayindicate that a demand for medical care increases during peak mass eventparticipation times, and further, that a specific type of medical issuespredominates during such times. Additionally, the health data mayindicate the medical need at different medical station locations atdifferent times of the race. Having such analytics expands the potentialto analyze health data not only by care type, patient volume and lengthof stay, but also with respect to the geographic and temporalunderstanding of medical needs along the course.

In some instances, the obtained data streams (e.g., the data of the datastreams) may be fragmented. Thus, the data visualization system 102 mayautomatically merge the various data streams to into a single datastream, or otherwise identify meaningful data variables that areconsistent between one or more of the unique data streams. Morespecifically, the prediction logic 112 may automatically identify thepresence of robust variables (e.g. time stamps, weather dataspecificity), the potential for missing data values (e.g. medicaldiagnosis), and determine the reliability and accuracy of such variablesover time.

Referring again to FIG. 2 , the obtained operational data is used togenerate various aggregations, analytics, and/or predictionscorresponding to the mass participation event, and in one specificexample, to generate a simulation of participants in the massparticipation event (operation 204). Referring to FIG. 1 , a predictionlogic component 112 of the data visualization system 102 may executevarious algorithms (e.g., machine-learning) and/or processes thatgenerate a simulation that predicts and/or otherwise models variousaspects of the mass participation event and the behavior of participantsin the mass participation event. In some embodiments, the predictionsand simulations may be generated for a particular time period andinitially may be based on historical operational data corresponding topast time periods sharing common characteristics (e.g., demographics ofparticipants, number of participants, health concerns of participants,weather conditions, geographic location, event preparations) with thespecified time period. Stated differently, the first simulation may beexecuted based on historic data, while subsequent simulations may bebased on real-time operational data obtained during the event, asexplained in detail below. Accordingly, in one specific embodiment andin the context of a marathon, the prediction logic component 112 of thedata visualization system 102 may automatically generate a simulation ofrunners participating in the marathon, before the actual marathon eventoccurs in real-time. Stated differently, the prediction logic 112 maygenerate a simulation of the marathon that includes predictions of theparticipants running behavior during the marathon, even though themarathon has not officially begun.

An illustrative example of generating a simulation will now be provided.Assume a series of health care providers are interested in preparing fora marathon event by making sure the correct amount or medical resourcesare displaced at medical supply areas throughout the marathon course orpath. At some locations, a larger amount of medical supplies andresources may be required due to larger runner participant density andinjury. To identify such locations, the system may initiate a simulationof the marathon, wherein the simulation includes predictions of thespeed and location of individual runners, or groups of runners. Based onthe simulation, the system can predict or otherwise determine specificmedical supply areas and a corresponding specific amount of medicalsupplies that should be allocated to the identified specific areas. Toensure that the prediction system is generating accurate simulations andpredictions, the system may monitor and capture real-time operationaldata occurring during the live marathon event and compare the simulateddata to the real-time data, to ensure that system is properly trained tomake accurate marathon simulations.

FIG. 3 provides a process and/or method 300 for simulating runnersparticipating in a marathon, according to one embodiment. Asillustrated, the process begins with obtaining operational datacorresponding to the marathon, as described above with respect to FIG. 2. Based on the obtained operational data, a simulation of the marathonis initiated and/or executed (operation 304). In one specific exampleand referring to FIG. 1 , the prediction logic 112 may calculate orotherwise execute the following algorithms to during the simulation:

Participant Density Function at a Marathon:

The participant density function (referred to herein as “runner densityfunction”) predicts where runners are given a time, temperature, andstarting times. In some embodiments, the data visualization system 102may automatically decide on a speed multiplier ratio (used to reflectrace-day conditions), where a reduced number of ‘simulated’ runners arecreated (merely for increased speed, but could be 1:1), each of whichinclude the characteristics of real runners (speed functions, corral,start times, temperature factor). The data visualization system 102 mayfurther virtually place each runner in a corral and assign a start timerelative to the real runners represented by the simulated runner entity.Generally speaking, a corral represents a sectioned area at the lineupof a race that helps separate runners into different pace groups. Thefaster an individual is, the more likely he or she will end up in one ofthe first few corrals. The prediction logic 112 automatically executesinstructions that automatically simulates the marathon for a specificperiod of time, such as five hundred (500) minutes. Each minute, eachrunner entity has its position, speed, and status in the race (notstarted, started, finished) updated (i.e., simulated).

Calculate Speed Given Corrals and how to Simulate the Runners:

The prediction logic of the data visualization system 102 may alsoautomatically estimate speed for each simulated runner or for a group ofrunners. More specifically, based on corrals, the data visualizationsystem 102 generates a prediction of how speed changes for every 5ksegment that runners run. Thus, the data may include a set of intervalsfor every 5k segment in the marathon race. FIG. 1A provides anillustration of a graph 120 showing the change in speed given distancetravelled (illustrated at 122), averaged by corral, for a marathon. Asillustrated, the speed index (illustrated at 124) for each corral isnormalized at the average speed for that corral for the entire race.Therefore, a speed index of 1.15 indicates running at 115% the averagespeed and an index of 0.9 indicates running at 90% of speed.

As illustrated, the fast corrals start and end closer to their averagespeed when compared to slow corrals. As an example, the Elite corral(dark blue) starts about 4% faster than average speed, and ends about 5%slower. In contrast, corral K begins almost 10% faster and ends 10%slower than their average speed.

FIG. 1B provides an illustration of a graph 140 showing the relationbetween temperature and speed. The graph 140 illustrates the speed inmiles per hour (illustrated at 142) given position in the marathon(illustrated at 144), for different temperatures, for corral C.Temperatures are taken from the past 7 years, with a range as low as 36F and as high as 74 F. (NOTE: Since corral assignments changed,participants in corral C are estimated for all years using the historiccorral assignments as a basis for calculations)

There is a similar curve with all corrals, and analysis by gender, agecategory, etc. suggests the same effect: higher temperature both: 1)decreases average speeds; and 2) increases the rate at which speeddecreases as the marathon progresses.

Runner Tracking

The prediction logic 112 may obtain input from one or more sensorscorresponding to the runner tracking feed contains data input from thetiming mats located at each 5 Km (“5K”) mark along the race course. Therunner tracking feed contains data input. The timing mats record thenumber of runners crossing each 5K mark. From such information, runnerdensity is estimated in specific segments along the course, such as thestretches between medical aid stations. Since these segments do notcorrespond to the 5K timing mats, the following equations are used toestimate runner counts, with the following notation for a chosen segmentj along the course.

-   -   a_(j): One endpoint of segment j, measured in kilometers from        the race start    -   R(a_(j)): Runners past endpoint of segment j    -   R⁺(a_(j)): Runner count recorded at 5K marker immediately prior        to endpoint a_(j)    -   R⁻(a_(j)): Runner count recorded at 5K marker immediately        following endpoint a_(j)    -   K⁺(a_(j)): 5K marker immediately prior to endpoint a_(j),        measured in kilometers from race start    -   K⁻(a_(j)): 5K marker immediately following endpoint a_(j),        measured in kilometers from race start        R(a _(j))=R ⁺(a _(j))*(1−(a _(J) −K ⁺(a _(j))/5))+R ⁻(a        _(j))*(1−K ⁻(a _(j))−a _(J)/5))

Equation (1) calculates the number of runners past segment endpointa_(j) as a combination of the runner counts at the two 5K markers beforeand after a_(j), weighted by the relative distances between a_(j) andthese markers.Runners in segment j=R(a _(j))−Rb _(j)

Equation (2) calculates the number of runners in segment j by the numberof runners passing the start point of the segment minus the volume ofrunners who passed the end point of the segment. FIG. 4 presents anillustration of the calculation of equations (1) and (2). The density ofrunners in a segment is obtained by dividing the number of runners in asegment by the length of the segment. Density values are converted to acolor code for display as a heat map over the path of the course. Themap also displays the percent of runners passing each aid station withequation (1), with the aid station location used for a_(j).

Referring again to FIG. 3 , upon the start of the actual real-worldmarathon, real-time operational data is captured and monitored by thedata visualization system (operation 306). Referring to FIG. 1 , thedata visualization system 102 automatically captures operational dataincluding: gathering distribution of corrals in percentage and absolutenumbers; gathering information on number of runners; gathering real-timeinformation on start times of the race (with a member of the team at thestart line); gathering real-time cumulative runner informationcorresponding to 5 Km segments in the marathon; etc. In one specificembodiment, portions of the real-time operational data are obtained fromtiming mats (located at each 5 Km mark along the course) to identify thenumber of runners passing each 5 Km mark over time. Thus, referring toFIG. 1 , assuming the mass participation event 101 is a marathon,sensors (equivalent to timing mats) may provide data to the datavisualization system 102 indicating the number of runners passing each 5Km mark, the speed of each runner or a group of runners at the time atwhich the runner and/or group of runners passes the 5 Km, and the like.

Referring again to FIG. 3 , in some embodiments, the simulated data isvalidated to ensure that the prediction logic is generating simulationsthat are within an acceptable threshold or range (operation 308). Withreference to FIG. 1 , the data visualization system 102 may compare thesimulated 5 Km intervals to the obtained real-time operational dataincluding 5 Km interval data captured during the marathon. If thecomparison satisfies an acceptable threshold (e.g., an exact match ofdata or with a statistically significant range), then the simulationdata is considered acceptable. In such a scenario, the datavisualization system 102 may generate an indication that the simulationand/or the simulated intervals are of an acceptable range.Alternatively, when the threshold is not satisfied, the datavisualization system 102 may generate and indication that the simulationand/or the simulated interval is not of an acceptable range.

Referring again to FIG. 3 , when the simulation and/or the simulationdata is validated, the prediction logic is re-trained based on thevalidated simulation, simulation data, and/or interval data (operation312). Given the dynamic nature of marathons, the prediction logic 104may be continuously trained overtime using verified simulation data,simulations, and/or interval data to ensure the prediction logic 112 cangenerate or otherwise predict more precise and accurate simulations. Insome instances, the prediction logic may be trained only by the systemautomatically adjusting some of the parameters of the participantdensity function, estimated speed function and/or the runner trackingfunction, in response to the simulated intervals not being of anacceptable range.

Referring back to FIG. 2 , once the simulations, analytics, and/orpredictions have been generated, one or more interactiveinterfaces/input forms (e.g. a user-interface or graphicaluser-interface (GUI)) may be generated for displaying, in real-time, thegenerated mass participation event prediction analytics (operation 106).In particular, the prediction logic component 112 may generateinterfaces configured to display or otherwise present the one or moreparameters, analytics, simulations, and/or the like, that effectivelypredict and/or otherwise simulate participant behaviors of the massparticipation event. The interfaces may include interactive elements,such as buttons, forms, activity logs, fields, selections, inputs,streams, images, etc., charts, for displaying various mass participationevent aggregations, analytics, and/or predictions. For example, in oneembodiment, one or more web pages may be displayed at the client devices104-110 that allow users to access the predictions in real-time.

Alternatively, in real-time, the parameters, analytics, simulationsand/or the like, of the mass participation event may be encapsulatedinto a logical instruction for transmission to some type of physicaland/or wearable device for notification and use (operation 108).Referring to FIG. 1 , the prediction logic 112 may generate theinstruction and automatically transmit the instruction to some type ofwearable device, such as a clothing and/or other wearable accessories.In other instances, the instruction may be transmitted to anotherexternal computing system to initiate a process. For example, aninstruction may be transmitted to a health care-related computing systemto automatically initiate a health care responder procedure, in responseto events occurring in the mass participation event.

FIG. 4 illustrates an example of a suitable computing and networkingenvironment 400 that may be used to implement various aspects of thepresent disclosure described in FIGS. 1-2 . As illustrated, thecomputing and networking environment 400 includes a general purposecomputing device 400, although it is contemplated that the networkingenvironment 400 may include one or more other computing systems, such aspersonal computers, server computers, hand-held or laptop devices,tablet devices, multiprocessor systems, microprocessor-based systems,set top boxes, programmable consumer electronic devices, network PCs,minicomputers, mainframe computers, digital signal processors, statemachines, logic circuitries, distributed computing environments thatinclude any of the above computing systems or devices, and the like.

Components of the computer 400 may include various hardware components,such as a processing unit 402, a data storage 404 (e.g., a systemmemory), and a system bus 406 that couples various system components ofthe computer 400 to the processing unit 402. The system bus 406 may beany of several types of bus structures including a memory bus or memorycontroller, a peripheral bus, and a local bus using any of a variety ofbus architectures. For example, such architectures may include IndustryStandard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus,Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA)local bus, and Peripheral Component Interconnect (PCI) bus also known asMezzanine bus.

The computer 400 may further include a variety of computer-readablemedia 408 that includes removable/non-removable media andvolatile/nonvolatile media, but excludes transitory propagated signals.Computer-readable media 408 may also include computer storage media andcommunication media. Computer storage media includesremovable/non-removable media and volatile/nonvolatile media implementedin any method or technology for storage of information, such ascomputer-readable instructions, data structures, program modules orother data, such as RAM, ROM, EEPROM, flash memory or other memorytechnology, CD-ROM, digital versatile disks (DVD) or other optical diskstorage, magnetic cassettes, magnetic tape, magnetic disk storage orother magnetic storage devices, or any other medium that may be used tostore the desired information/data and which may be accessed by thecomputer 400. Communication media includes computer-readableinstructions, data structures, program modules or other data in amodulated data signal such as a carrier wave or other transportmechanism and includes any information delivery media. The term“modulated data signal” means a signal that has one or more of itscharacteristics set or changed in such a manner as to encode informationin the signal. For example, communication media may include wired mediasuch as a wired network or direct-wired connection and wireless mediasuch as acoustic, RF, infrared, and/or other wireless media, or somecombination thereof. Computer-readable media may be embodied as acomputer program product, such as software stored on computer storagemedia.

The data storage or system memory 404 includes computer storage media inthe form of volatile/nonvolatile memory such as read only memory (ROM)and random-access memory (RAM). A basic input/output system (BIOS),containing the basic routines that help to transfer information betweenelements within the computer 400 (e.g., during start-up) is typicallystored in ROM. RAM typically contains data and/or program modules thatare immediately accessible to and/or presently being operated on byprocessing unit 402. For example, in one embodiment, data storage 404holds an operating system, application programs, and other programmodules and program data.

Data storage 404 may also include other removable/non-removable,volatile/nonvolatile computer storage media. For example, data storage404 may be: a hard disk drive that reads from or writes tonon-removable, nonvolatile magnetic media; a magnetic disk drive thatreads from or writes to a removable, nonvolatile magnetic disk; and/oran optical disk drive that reads from or writes to a removable,nonvolatile optical disk such as a CD-ROM or other optical media. Otherremovable/non-removable, volatile/nonvolatile computer storage media mayinclude magnetic tape cassettes, flash memory cards, digital versatiledisks, digital video tape, solid state RAM, solid state ROM, and thelike. The drives and their associated computer storage media, describedabove and illustrated in FIG. 4 , provide storage of computer-readableinstructions, data structures, program modules and other data for thecomputer 400.

A user may enter commands and information through a user interface 410or other input devices such as a tablet, electronic digitizer, amicrophone, keyboard, and/or pointing device, commonly referred to asmouse, trackball or touch pad. Other input devices may include ajoystick, game pad, satellite dish, scanner, or the like. Additionally,voice inputs, gesture inputs (e.g., via hands or fingers), or othernatural user interfaces may also be used with the appropriate inputdevices, such as a microphone, camera, tablet, touch pad, glove, orother sensor. These and other input devices are often connected to theprocessing unit 402 through a user interface 410 that is coupled to thesystem bus 406, but may be connected by other interface and busstructures, such as a parallel port, game port or a universal serial bus(USB). A monitor 412 or other type of display device is also connectedto the system bus 406 via an interface, such as a video interface. Themonitor 412 may also be integrated with a touch-screen panel or thelike.

The computer 400 may operate in a networked or cloud-computingenvironment using logical connections of a network interface or adapter414 to one or more remote devices, such as a remote computer. The remotecomputer may be a personal computer, a server, a router, a network PC, apeer device or other common network node, and typically includes many orall of the elements described above relative to the computer 400. Thelogical connections depicted in FIG. 4 include one or more local areanetworks (LAN) and one or more wide area networks (WAN), but may alsoinclude other networks. Such networking environments are commonplace inoffices, enterprise-wide computer networks, intranets and the Internet.

When used in a networked or cloud-computing environment, the computer400 may be connected to a public and/or private network through thenetwork interface or adapter 414. In such embodiments, a modem or othermeans for establishing communications over the network is connected tothe system bus 406 via the network interface or adapter 414 or otherappropriate mechanism. A wireless networking component including aninterface and antenna may be coupled through a suitable device such asan access point or peer computer to a network. In a networkedenvironment, program modules depicted relative to the computer 400, orportions thereof, may be stored in the remote memory storage device.

The foregoing merely illustrates the principles of the disclosure.Various modifications and alterations to the described embodiments willbe apparent to those skilled in the art in view of the teachings herein.It will thus be appreciated that those skilled in the art will be ableto devise numerous systems, arrangements and methods which, although notexplicitly shown or described herein, embody the principles of thedisclosure and are thus within the spirit and scope of the presentdisclosure. From the above description and drawings, it will beunderstood by those of ordinary skill in the art that the particularembodiments shown and described are for purposes of illustrations onlyand are not intended to limit the scope of the present disclosure.

References to details of particular embodiments are not intended tolimit the scope of the disclosure.

The invention claimed is:
 1. A system for visualizing data, the systemcomprising: a computing device deployed within a communications network,wherein the computing device is configured to: use prediction logic toprocess historical operational data and thereby generate a simulation ofphysical movement of participants that are physically located at a massparticipation event; receive real-time operational data corresponding toat least the physical movement of the participants during the massparticipation event; based on the simulation and the real-timeoperational data, verify that the simulation is accurately modelingreal-time physical movement of the participants at the massparticipation event; based on verifying the simulation, train theprediction logic using the real-time operational data to obtain refinedprediction logic; and use the refined prediction logic to generate anupdated simulation of the physical movement of the participants that arephysically located at the mass participation event.
 2. The system ofclaim 1, wherein the computing device is further configured to obtain atleast a portion of the real-time operational data from the participantsduring the mass participation event.
 3. The system of claim 1, whereinthe computing device is further configured to generate a graphical userinterface to display event prediction analytics that predict thephysical movement of the participants at the mass participation event.4. The system of claim 1, wherein the computing device is furtherconfigured to receive at least a portion of the real-time operationaldata from one or more sensors physically located at the massparticipation event.
 5. The system of claim 1, wherein the computingdevice is further configured to validate the simulation based on acomparison of simulation data to the real-time operational data, andwherein the simulation is deemed valid based on the comparisonsatisfying a data matching threshold.
 6. The system of claim 1, whereinthe mass participation event comprises at least one of a concert, afestival, a sporting event, a mass police response, or a convention. 7.The system of claim 1, wherein the participants comprise at least one ofspectators, volunteers, event organizers, police responders, or healthcare responders.
 8. A computing device comprising: one or moreprocessors; memory storing instructions that, when executed by the oneor more processors, cause the computing device to: use prediction logicto process historical operational data and thereby generate a simulationof physical movement of participants that are physically located at amass participation event; receive real-time operational datacorresponding to at least the physical movement of the participantsduring the mass participation event; based on the simulation and thereal-time operational data, verify that the simulation is accuratelymodeling real-time physical movement of the participants at the massparticipation event; based on verifying the simulation, train theprediction logic using the real-time operational data to obtain refinedprediction logic; and use the refined prediction logic to generate anupdated simulation of the physical movement of the participants that arephysically located at the mass participation event.
 9. The computingdevice of claim 8, wherein the instructions, when executed by the one ormore processors, further cause the computing device to obtain at least aportion of the real-time operational data from the participants duringthe mass participation event.
 10. The computing device of claim 8,wherein the simulation models at least one of a position of aparticipant, a speed of a participant, or a status of a participant. 11.The computing device of claim 8, wherein the instructions, when executedby the one or more processors, further cause the computing device toreceive at least a portion of the real-time operational data from one ormore sensors physically located at the mass participation event.
 12. Thecomputing device of claim 8, wherein the instructions, when executed bythe one or more processors, further cause the computing device to:generate, based on the prediction logic, an instruction for at least oneof the participants; and notify a participant of the instruction atleast by sending the instruction to a device associated with theparticipant.
 13. The computing device of claim 8, wherein the real-timeoperational data further corresponds to at least one of weather data,medical data, participant data, course information data, or environmentdata.
 14. The computing device of claim 8, wherein the computing deviceis further configured to use the prediction logic to process thehistorical operational data and thereby generate a prediction of whereto locate medical supply areas at the mass participation event.
 15. Anon-transitory computer-readable storage medium comprisingcomputer-executable instructions that, when executed, cause a computingdevice to: process historical operational data using prediction logic togenerate a simulation of physical movement of participants that arephysically located at a mass participation event; receive real-timeoperational data corresponding to at least the physical movement of theparticipants during the mass participation event; based on thesimulation and the real-time operational data, verify that thesimulation is accurately modeling real-time physical movement of theparticipants at the mass participation event; based on verifying thesimulation, train the prediction logic using the real-time operationaldata to obtain refined prediction logic; and use the refined predictionlogic to generate an updated simulation of the physical movement of theparticipants that are physically located at the mass participationevent.
 16. The non-transitory computer readable medium of claim 15,wherein the instructions, when executed, further cause the computingdevice to train the prediction logic at least by adjusting one or moreparameters of at least one function that models the physical movement ofthe participants at the mass participation event.
 17. The non-transitorycomputer readable medium of claim 16, wherein the at least one functioncomprises at least one of a participant density function, a participantspeed function, or a participant tracking function.
 18. Thenon-transitory computer readable medium of claim 15, wherein theinstructions, when executed, further cause the computing device togenerate a graphical user interface to display event predictionanalytics indicating predictions of the physical movement of theparticipants at the mass participation event.
 19. The non-transitorycomputer readable medium of claim 15, wherein the instructions, whenexecuted, further cause the computing device to receive the real-timeoperational data from one or more sensors that are physically located atthe mass participation event.
 20. The non-transitory computer readablemedium of claim 15, wherein the mass participation event comprises atleast one of a concert, a festival, a sporting event, a mass policeresponse, or a convention.